home *** CD-ROM | disk | FTP | other *** search
/ Revolution - Das Atari CD Magazin 1997 / Revolution - Das Atari CD Magazin 1.iso / software / anwendng / qed_397 / sourcen / fsel.c < prev    next >
C/C++ Source or Header  |  1996-12-29  |  2KB  |  99 lines

  1. /*
  2.  * fsel.h: basiert auf fsel_inp.c von Oliver Scheel
  3. */
  4. #include "global.h"
  5. #include "fsel.h"
  6.  
  7.  
  8. /* ----- Selectric---------------------------------------------------------- */
  9.  
  10. SLCT_STR    *slct = NULL;
  11. LONG        fsel = 0L;
  12.  
  13.  
  14. BOOLEAN fsel_check(VOID)
  15. {
  16.     return getcookie('FSEL', &fsel);
  17. }
  18.  
  19.  
  20. BOOLEAN slct_check(UWORD version)
  21. {
  22.     if (fsel_check())
  23.     {
  24.         slct = (SLCT_STR *)fsel;
  25.         if (slct->id != 'SLCT')
  26.             slct = NULL;
  27.     }
  28.     if (slct && (slct->version >= version))
  29.         return TRUE;
  30.     else
  31.         return FALSE;
  32. }
  33.  
  34.  
  35. WORD slct_morenames(WORD mode, WORD num, VOID *ptr)
  36. {
  37.     if (slct_check(0x0102))
  38.     {
  39.         slct->comm = mode;
  40.         slct->out_count = num;
  41.         slct->out_ptr = ptr;
  42.         return TRUE;
  43.     }
  44.     else
  45.         return FALSE;
  46. }
  47.  
  48.  
  49. WORD slct_getnum(VOID)
  50. {
  51.     if (slct_check(0x0102))
  52.         return (slct->out_count);
  53.     else
  54.         return 0;
  55. }
  56.  
  57. WORD slct_first(DTA *mydta, WORD attr)
  58. {
  59.     if (slct_check(0x0102))
  60.         return (slct->get_first(mydta, attr));
  61.     else
  62.         return -32;
  63. }
  64.  
  65.  
  66. WORD slct_next(DTA *mydta)
  67. {
  68.     if (slct_check(0x0102))
  69.         return (slct->get_next(mydta));
  70.     else
  71.         return -32;
  72. }
  73.  
  74.  
  75. WORD slct_release(VOID)
  76. {
  77.     if (slct_check(0x0102))
  78.         return (slct->release_dir());
  79.     else
  80.         return -32;
  81. }
  82.  
  83.  
  84. /* ----- Freedom ----------------------------------------------------------- */
  85.  
  86. WORD freedom_check(VOID)
  87. {
  88.     if (fsel_check())
  89.     {
  90.         slct = (SLCT_STR *)fsel;
  91.         if (slct->id != 'SLCT')
  92.             slct = NULL;
  93.     }
  94.     if (slct && (slct->version >= 0x0200))
  95.         return TRUE;
  96.     else
  97.         return FALSE;
  98. }
  99.